package com.gzg.userservice.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gzg.userservice.domain.dto.LoginDTO;
import com.gzg.userservice.domain.dto.PageDTO;
import com.gzg.userservice.domain.po.User;
import com.gzg.userservice.domain.vo.Result;

public interface IUserService extends IService<User> {
    /**
     * 注册方法
     * @param user
     * @return
     */
    Result  register(User user);

    /**
     * 登录方法
     * @param loginDTO
     * @return
     */
    Result login(LoginDTO loginDTO);

    /**
     * 分页查询所有用户
     * @return
     */
    Result queryUsersPage(PageDTO pageDTO);

    /**
     * 根据id查询用户
     * @param id
     * @return
     */
    Result queryUserById(Long id);

    /**
     * 修改用户信息
     * @return
     */
    Result updateUser(User user);

    /**
     * 密码重置
     * @param user
     * @return
     */
    Result resetPassword(User user);
}
